//
//  QueueList.h
//  DataStruct
//
//  Created by vase on 2022/3/22.
//

#ifndef QueueList_h
#define QueueList_h

#include <stdio.h>
#include <stdlib.h>

typedef struct QueueListItem{
    int value; //数据位
    struct QueueListItem *next; //后继指针
} QueueListItem;

typedef struct {
    //head指向预定义的头节点
    //tail指向最后一个节点本身
    QueueListItem *head, *tail;
} QueueList;

/** 链式存储队列的初始化函数*/
QueueList* initQueueList(void);

/** 队列入队*/
void pushQueueList(QueueList *queue, int item);

/** 队列出队*/
int popQueueList(QueueList *queue);

/** 检验队列是否为空*/
int isEmptyQueueList(QueueList *queue);

#endif /* QueueList_h */
